package io.gitee.chearnee.fw.common.utils.compare;

import org.springframework.core.annotation.AliasFor;

import java.lang.annotation.*;

/**
 * @author cn
 * @version 1.0
 * @description
 * @date 2023/7/21 11:21
 */
@Documented
@Retention(RetentionPolicy.RUNTIME)
@Target({ElementType.FIELD, ElementType.TYPE})
public @interface Compare {
    /**
     * 当前字段的描述
     */
    @AliasFor("desc")
    String value() default "";

    /**
     * 当前字段的描述
     */
    @AliasFor("value")
    String desc() default "";

    /**
     * 默认开启比较
     */
    boolean enable() default true;

    /**
     * 字段解析器，例如有些是枚举、时间、数组等内容
     */
    Class<? extends IDescHandler<?>> descValue() default ObjectDescHandler.class;
}
